package cn.edu.klmy.dao;

/**
 * 老师与班级关系的管理接口。
 */
public interface ITeacherClaszRelDao {

    /**
     * 分配老师到班级。
     *
     * @param teacherIds 老师ID集合
     * @param claszId    班级ID
     */
    void addTeachersToClasz(int[] teacherIds, int claszId);

    /**
     * 将老师分配到多个班级中。
     *
     * @param claszIds  班级ID集合
     * @param teacherId 老师ID
     */
    void addClaszsToTeacher(final int[] claszIds, final int teacherId);

    /**
     * 取消老师的班级分配。
     *
     * @param teacherId 老师ID
     * @param claszId   班级ID
     */
    void removeTeachersFromClasz(int[] teacherId, int claszId);

    /**
     * 取消老师在多个班级的分配。
     *
     * @param claszIds
     * @param teacherId
     */
    void removeClaszsFromTeacher(int[] claszIds, int teacherId);

    /**
     * 移除老师从所有的班级。
     *
     * @param teacherId 老师ID
     */
    void removeTeacherFromAllClasz(int teacherId);

    /**
     * 删除一个班级分配的全部学生。
     *
     * @param claszId 班级ID
     */
    void removeAllTeacherFromClasz(int claszId);
}
